Voici le topic de mon projet de pokémon ! ( j'ai repris mon article de la RdP...)
Ce projet est ( pour l'instant j'espère ) l'un des seuls codé avec C.Basic ! Ce petit bijou de programmation permet de faire des prouesses comme charger des sprites au format .bmp et d'accéder directement à la mémoire de stockage de la calculatrice ! ( et ce ne sont que deux des nombreux aspects avantageux de C.Basic ).
Sans plus attendre, des images :
pour le moment, rien de vraiment concret : il y a :
- les déplacements
- le chargement des maps via des Str ( merci Ne0tux ! )
- collisions
- events comme les dialogues et le changement de maps
Le jeu se présente dans le gameplay plus comme un zelda par l'absence de scrolling car trop gourmand en performances !
Je tenais à dire que d'après les plans que j'ai faits, une aventure complète ( avec une région, des arènes, 152 pokemons, une vilaine team...) tiendrait largement sur une calculatrice ! Donc il y aurait l'hypothèse de voir poindre un pokemon complet sur ce site entièrement codé en Basic !
De plus, pour un prix dérisoire ne mémoire, il serait possible de gérer les échanges de pokémons par le câble 3 broches et des combats multijoueurs ! sympa non ?
CONSEILS :
- faire [shift] +[menu] et régler le Pict mode en "Heap", le déplacement du personnage sera alors bien plus rapide !
Installation
Cliquer pour enrouler
INSTALLATION :
ATTENTION : ce programme necessite l'installation prealable de C. BASIC et ne fonctionne que sur les modeles de calculatrices supportant les add-ins !
>créer dans sa calculatrice un dossier POKEMON et un dossier POKEBETA
>télécharger le zip
>decompressez-le
>importez les dossiers POKEMON et POKEBETA du zip ( s'il ne sont pas nommés comme ceci, renommez les) dans FA-124
>importez tous les fichiers des dossiers dans la calculatrice ( ils devraient se mettre tous seuls dans les dossiers POKEMON et POKEBETA de votre calto
>dans C.Basic, faites [shift] + [menu] et mettez le "storage mode" sur S.Mem
>allez dans le dossier POKEBETA à partir de C.Basic, et lancez le programme 0POKEMON
> bon jeu !
historique des mises à jour
Cliquer pour enrouler
=> correction de bugs de dialogues, de lancement de maps et de chargement de sprites
V 0.3 => optimisations de mémoire occupée
- ajout d'un debugmode
- poursuite de la création de l'interface de combat
V 0.2 => modification des textures de l'eau et de la porte, amélioration du système de déplacements grâce à Sentaro21 ( chargement des Bmp trop lent ) qui est dorénavant plus rapide
Thanks for the video!
The screen change is instantaneous. It is a great evolution.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Ok.
As a method for instantly switching screens,
I think there is a way to save each background into the Pict file.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
I also thought about this possibility, but i guess i couldn't load all the screens, because there are not enough memory...
I guess i can divide the maps in "zones" ( each one would have about 20 screens ), and do a charging time only when you go from a zone to another...
"Quand je dis à la cour : "Sautez ! ", tout le monde me demande "jusqu'où ?" " Dijkstra - The Witcher
Bonjour ! Après la petite piqûre de rappel de Shadow lors de la dernière RdP :
flashback intempestif a écrit : Mais depuis que Lightmare à lancé son projet en C.Basic Pokémon Obsidienne...
J'ai rassemblé mes forces pour mettre ce topic à jour et reprendre le développement ! ah mais ! ( Shadow devrait faire ca plus souvent pour relancer des projets ! )
Les images du topic mises à jour en fichier joint
"Quand je dis à la cour : "Sautez ! ", tout le monde me demande "jusqu'où ?" " Dijkstra - The Witcher
Wow, c'est joli ! Un petit conseil sur le dessin : tu peux avoir une "troisième couleur" en coloriant les surfaces en damier. C'est moins aggressif que les grandes zones noires et ça se maîtrise très facilement !
Les bâtiments ! Beaucoup de noir à l'écran ça fait "lourd". Tu pourrais dessiner un damier sur les zones plus éclairées (selon l'endroit où tu mets la lumière), ce qui réduirait la charge du dessin, donnerait plus de forme, et accessoirement pourrait faire plus stylé
Ben à vrai dire, les sprites des bâtiments sont de toute façon destinés à être remplacés par de nouveaux, tout bêtement parce que la porte est bien trop petite pour le personnage !
Ces nouveaux bâtiments sont en cours de "design" ( comment il s'y croit l'autre ) et seront bien plus grands et permettront plus de détails comme des ombres et des reliefs.
Avant de reprendre la programmation en elle-même, il faut que je me fasse une large bibliothèque de sprites pour tout ( que ca soit pokémons, pnjs, bâtiments, environnement... )
"Quand je dis à la cour : "Sautez ! ", tout le monde me demande "jusqu'où ?" " Dijkstra - The Witcher
J'ai essayé de jouer à la version 0.3, mais lorsque je veux changer d''endroit en déplaçant mon personnage, j'ai une erreur "can't find file" en me renvoyant sur la ligne:
Then BmpLoad("/POKEMON/PNJ2.4"),E*13,F*13 //Curseur en bout de ligne
J'imagine que lorsque les fichiers BEACH2.1 ; PNJ2.2 ; PNJ2.3 ; PNJ2.4 ont été enregistrés, ils ont prit les extensions (.1 ; .2 ; .3 ; .4) plutôt que .bmp, ce qui les ont rendu illisibles.
Du coup je n'arrive pas à aller plus loin dans le jeu...
@Redeyes : je n'ai jamais eu ce problème, mais du coup j'ai corrigé pour que les sprites aient tous l'extension .bmp ! tu peux tester !
( t'inquiète, je trouverai le temps dans le week end pour tester SBZ ! )
"Quand je dis à la cour : "Sautez ! ", tout le monde me demande "jusqu'où ?" " Dijkstra - The Witcher
Salut ! J'ai testé ton programme pour le week-end de test. Installation pas triviale, mais on y arrive. Ci-dessous quelques remarques.
Dans l'ensemble je le trouve vraiment sympa. Y'a de beaux graphismes, y'a l'ambiance Pokémon, il manque juste un peu de fluidité sur les déplacements et du code pour faire marcher la suite !
-
C'est sympa de régler le contraste je suppose, mais les bonnes valeurs dépendent du modèle. Sur Graph 75+E, la valeur indiquée est hyper basse et j'étais quasiment incapable de lire jusqu'à ce que je récupère le contrôle de la touche SHIFT pour le réinitialiser au moment d'entrer mon nom. Laisse ton joueur mettre ce qu'il préfère !
J'adore le PNJ qui parle du développeur à la sortie de la maison. C'est tellement méta et dans l'esprit Pokémon !
Le mouvement du personnage est pas très pratique. Il est vraiment lent dans l'ensemble, et comme il n'est pas animé c'est pas hyper naturel à manipuler. On aurait aussi aimé arriver en face des portes, quitte à trouver un message "fermé" à l'action ! (Portes qui sont bien trop petites pour nous, mais on peut faire abstraction.)
Toujours rapport au déplacement, traditionnellement dans Pokémon si tu appuies sur une flèche directionnelle qui n'est pas la direction dans laquelle tu regardes, le personnage se tourne, mais n'avance pas. C'est pratique pour se déplacer.
Graphiquement, c'est vraiment sympa ! Tu as l'intro fidèlement reproduite (ou presque, pour une fois c'est le professeur qui se lève en retard xD) de Pokémon, et des supers graphismes tout le long. J'espère que ça va exploser avec le nombre de fichiers bitmap dans le projet, enfin t'as le temps de voir encore !
J'ai ramassé la poké ball en sortant, mais au lieu de disparaître, elle est devenue inerte (ie. n'interagit pas avec moi) et un sprite de PNG est apparu ; je ne pouvais pas non plus interagir. J'imagine que ce n'était pas le but..
Je trouve ça cool que les personnages se tournent vers toi quand tu leur parles ! Et si, j'avais compris que c'était de l'eau !
Je te trouve vraiment bien parti. Si ç'avait été un programme, j'aurais probablement noté 7 pour t'encourager à le continuer. Bon courage pour la suite, je retesterai !
Ajouté le 07/09/2019 à 13:44 :
Correction parce que je ne faisais pas attention à la configuration de ma calculatrice... le mouvement n'est pas si lent que ça, ma machine ramait juste. Par contre il n'est pas très naturel à cause du manque d'animation, c'est tout.
Après l'écran titre, la sauvegarde se distingue de celle que l'on connaît: on se retrouve grâce au nom de notre joueur et c'est original!
L'introduction à l'aventure qui débute par un réveil tardif n'a été utilisé que dans une seule génération des jeux Pokémon (2e génération). L'avoir adapté ici fait plaisir à revoir! Aujourd'hui, ça paraît toujours aussi original (surtout qu'ici c'est le professeur qui est en retard)!
Cela dit le monologue du professeur Chen est toujours aussi fidèle à la franchise, tout comme l'animation du Evoli qu'il montre.
Puis j'en arrive au terrain: j'ai l'impression que les pnjs en ont tous après toi mais c'est amusant à lire!
Ce qui m'enchante ici c'est le fait que la règle des hautes herbes est parfaitement respectée: les pokémons sortent aléatoirement et uniquement dans ces zones! En plus, les animation de rencontre avec les pokémons sauvages sont très bien faites! (ma préférée est celle où l'animation est comme celle d'une attaque Psyko)
Pareil, la gestion de la rotation du pnj lorsqu'on lui parle est bien respectée. Ah oui, et le menu du jeu! C'est dommage que le seul pokémon qu'on ait soit un Evoli n.0, pas très utile dans un combat (j'y viendrai). Deux catégories, dont le Pokénav (3e génération) pointent vers le Debugmode (petite tentative de prank je suppose xD), qui justement est très bien agencé!
Aussi, quand j'ai voulu prendre la Pokéball, j'ai surpris un pnj juste devant moi! Très prisée à ce que je vois!
A présent les combats: après avoir rencontré un Evoli, je sors moi aussi mon Evoli (n.0). Les catégories ne contiennent pas grand chose de clair et sont buggées pour certaines, mais j'imagine que plus tard elles seront bien fonctionnelles!
En général, le jeu a du potentiel et envoie du rêve! Il est beau, fluide et nous renvoie bien au monde des pokémons que nous connaissons tant. Si je devais noter pour l'instant, je mettrai 8 sur 10! J'attend les prochaines avancées!
@Lephe et @Redeyes :
Merci infiniment pour vos inestimables tests !
Je vais faire une mise à jour de bug fixes et d'optimisations !
Déjà pour la lenteur du personnage, vous pouvez mettre le Pict Mode en Heap ( dans les réglages de C.Basic ), ca va augmenter la vitesse du personnage.
Le gros morçeau auquel j'ai peur de m'attaquer est d'implémenter le principe de couche "passive" qui regroupe les objets à l'écran qui ne bougent jamais, et de couche "active" qui regroupe ce qui peut bouger (dresseur, pnj...).
"Quand je dis à la cour : "Sautez ! ", tout le monde me demande "jusqu'où ?" " Dijkstra - The Witcher
Le gros morçeau auquel j'ai peur de m'attaquer est d'implémenter le principe de couche "passive" qui regroupe les objets à l'écran qui ne bougent jamais, et de couche "active" qui regroupe ce qui peut bouger (dresseur, pnj...).
Voilà quelques indices ! La partie statique peut se mettre facilement dans une map comme d'habitude, donc il te suffit de retirer ce qui peut bouger de ta map et hop tu as la partie passive.
Pour la partie active tu peux faire un tableau ou une liste avec tous les objets actifs sur la map. Pour chaque objet, tu retiens sa position à l'écran, son sprite, et genre son rôle/son numéro de dresseur/ce qui te permet de savoir quoi faire quand on interagit avec lui.
Dans ta boucle de jeu, de temps en temps tu parcoures la liste des objets actifs et tu les fais bouger s'ils marchent, te foncer dessus s'ils te cherchent des problèmes, etc etc.
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 05/03/2019 06:55 | #
Thanks for the video!
The screen change is instantaneous. It is a great evolution.
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Citer : Posté le 05/03/2019 07:11 | #
Ah ! Sorry but, it's only an impression due to the Screen Receiver...
Dijkstra - The Witcher
Citer : Posté le 05/03/2019 07:29 | #
Ok.
As a method for instantly switching screens,
I think there is a way to save each background into the Pict file.
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Citer : Posté le 05/03/2019 20:30 | #
I also thought about this possibility, but i guess i couldn't load all the screens, because there are not enough memory...
I guess i can divide the maps in "zones" ( each one would have about 20 screens ), and do a charging time only when you go from a zone to another...
Dijkstra - The Witcher
Citer : Posté le 21/05/2019 17:16 | # | Fichier joint
Bonjour ! Après la petite piqûre de rappel de Shadow lors de la dernière RdP :
Mais depuis que Lightmare à lancé son projet en C.Basic Pokémon Obsidienne...
J'ai rassemblé mes forces pour mettre ce topic à jour et reprendre le développement ! ah mais ! ( Shadow devrait faire ca plus souvent pour relancer des projets ! )
Les images du topic mises à jour en fichier joint
Dijkstra - The Witcher
Citer : Posté le 21/05/2019 17:19 | # | Fichier joint
la deuxième image en fichier joint de ce message !
Dijkstra - The Witcher
Citer : Posté le 21/05/2019 17:20 | #
Wow, c'est joli ! Un petit conseil sur le dessin : tu peux avoir une "troisième couleur" en coloriant les surfaces en damier. C'est moins aggressif que les grandes zones noires et ça se maîtrise très facilement !
Citer : Posté le 21/05/2019 17:23 | #
Oh ! Je n'y avais pas pensé ! Mais tu pensais à quel objet par "agressif" ?
Dijkstra - The Witcher
Citer : Posté le 21/05/2019 17:50 | #
Les bâtiments ! Beaucoup de noir à l'écran ça fait "lourd". Tu pourrais dessiner un damier sur les zones plus éclairées (selon l'endroit où tu mets la lumière), ce qui réduirait la charge du dessin, donnerait plus de forme, et accessoirement pourrait faire plus stylé
Citer : Posté le 21/05/2019 18:57 | #
Ben à vrai dire, les sprites des bâtiments sont de toute façon destinés à être remplacés par de nouveaux, tout bêtement parce que la porte est bien trop petite pour le personnage !
Ces nouveaux bâtiments sont en cours de "design" ( comment il s'y croit l'autre ) et seront bien plus grands et permettront plus de détails comme des ombres et des reliefs.
Avant de reprendre la programmation en elle-même, il faut que je me fasse une large bibliothèque de sprites pour tout ( que ca soit pokémons, pnjs, bâtiments, environnement... )
Dijkstra - The Witcher
Citer : Posté le 21/05/2019 20:14 | #
Je vois ! Bon courage pour faire tes sprites, et n'hésite pas à nous en envoyer régulièrement
Citer : Posté le 07/09/2019 08:15 | #
J'ai essayé de jouer à la version 0.3, mais lorsque je veux changer d''endroit en déplaçant mon personnage, j'ai une erreur "can't find file" en me renvoyant sur la ligne:
J'imagine que lorsque les fichiers BEACH2.1 ; PNJ2.2 ; PNJ2.3 ; PNJ2.4 ont été enregistrés, ils ont prit les extensions (.1 ; .2 ; .3 ; .4) plutôt que .bmp, ce qui les ont rendu illisibles.
Du coup je n'arrive pas à aller plus loin dans le jeu...
Citer : Posté le 07/09/2019 10:50 | #
@Redeyes : je n'ai jamais eu ce problème, mais du coup j'ai corrigé pour que les sprites aient tous l'extension .bmp ! tu peux tester !
( t'inquiète, je trouverai le temps dans le week end pour tester SBZ ! )
Dijkstra - The Witcher
Citer : Posté le 07/09/2019 11:19 | #
Ah chouette! Merci Lightmare, je teste de suite!
Citer : Posté le 07/09/2019 13:37 | #
Salut ! J'ai testé ton programme pour le week-end de test. Installation pas triviale, mais on y arrive. Ci-dessous quelques remarques.
Dans l'ensemble je le trouve vraiment sympa. Y'a de beaux graphismes, y'a l'ambiance Pokémon, il manque juste un peu de fluidité sur les déplacements et du code pour faire marcher la suite !
-
C'est sympa de régler le contraste je suppose, mais les bonnes valeurs dépendent du modèle. Sur Graph 75+E, la valeur indiquée est hyper basse et j'étais quasiment incapable de lire jusqu'à ce que je récupère le contrôle de la touche SHIFT pour le réinitialiser au moment d'entrer mon nom. Laisse ton joueur mettre ce qu'il préfère !
J'adore le PNJ qui parle du développeur à la sortie de la maison. C'est tellement méta et dans l'esprit Pokémon !
Le mouvement du personnage est pas très pratique. Il est vraiment lent dans l'ensemble, et comme il n'est pas animé c'est pas hyper naturel à manipuler. On aurait aussi aimé arriver en face des portes, quitte à trouver un message "fermé" à l'action ! (Portes qui sont bien trop petites pour nous, mais on peut faire abstraction.)
Toujours rapport au déplacement, traditionnellement dans Pokémon si tu appuies sur une flèche directionnelle qui n'est pas la direction dans laquelle tu regardes, le personnage se tourne, mais n'avance pas. C'est pratique pour se déplacer.
Graphiquement, c'est vraiment sympa ! Tu as l'intro fidèlement reproduite (ou presque, pour une fois c'est le professeur qui se lève en retard xD) de Pokémon, et des supers graphismes tout le long. J'espère que ça va exploser avec le nombre de fichiers bitmap dans le projet, enfin t'as le temps de voir encore !
J'ai ramassé la poké ball en sortant, mais au lieu de disparaître, elle est devenue inerte (ie. n'interagit pas avec moi) et un sprite de PNG est apparu ; je ne pouvais pas non plus interagir. J'imagine que ce n'était pas le but..
Je trouve ça cool que les personnages se tournent vers toi quand tu leur parles ! Et si, j'avais compris que c'était de l'eau !
Je te trouve vraiment bien parti. Si ç'avait été un programme, j'aurais probablement noté 7 pour t'encourager à le continuer. Bon courage pour la suite, je retesterai !
Ajouté le 07/09/2019 à 13:44 :
Correction parce que je ne faisais pas attention à la configuration de ma calculatrice... le mouvement n'est pas si lent que ça, ma machine ramait juste. Par contre il n'est pas très naturel à cause du manque d'animation, c'est tout.
Citer : Posté le 08/09/2019 23:44 | #
Très bien, à mon tour de donner mes impressions!
Après l'écran titre, la sauvegarde se distingue de celle que l'on connaît: on se retrouve grâce au nom de notre joueur et c'est original!
L'introduction à l'aventure qui débute par un réveil tardif n'a été utilisé que dans une seule génération des jeux Pokémon (2e génération). L'avoir adapté ici fait plaisir à revoir! Aujourd'hui, ça paraît toujours aussi original (surtout qu'ici c'est le professeur qui est en retard)!
Cela dit le monologue du professeur Chen est toujours aussi fidèle à la franchise, tout comme l'animation du Evoli qu'il montre.
Puis j'en arrive au terrain: j'ai l'impression que les pnjs en ont tous après toi mais c'est amusant à lire!
Ce qui m'enchante ici c'est le fait que la règle des hautes herbes est parfaitement respectée: les pokémons sortent aléatoirement et uniquement dans ces zones! En plus, les animation de rencontre avec les pokémons sauvages sont très bien faites! (ma préférée est celle où l'animation est comme celle d'une attaque Psyko)
Pareil, la gestion de la rotation du pnj lorsqu'on lui parle est bien respectée. Ah oui, et le menu du jeu! C'est dommage que le seul pokémon qu'on ait soit un Evoli n.0, pas très utile dans un combat (j'y viendrai). Deux catégories, dont le Pokénav (3e génération) pointent vers le Debugmode (petite tentative de prank je suppose xD), qui justement est très bien agencé!
Aussi, quand j'ai voulu prendre la Pokéball, j'ai surpris un pnj juste devant moi! Très prisée à ce que je vois!
A présent les combats: après avoir rencontré un Evoli, je sors moi aussi mon Evoli (n.0). Les catégories ne contiennent pas grand chose de clair et sont buggées pour certaines, mais j'imagine que plus tard elles seront bien fonctionnelles!
En général, le jeu a du potentiel et envoie du rêve! Il est beau, fluide et nous renvoie bien au monde des pokémons que nous connaissons tant. Si je devais noter pour l'instant, je mettrai 8 sur 10! J'attend les prochaines avancées!
Citer : Posté le 11/09/2019 17:32 | #
@Lephe et @Redeyes :
Merci infiniment pour vos inestimables tests !
Je vais faire une mise à jour de bug fixes et d'optimisations !
Déjà pour la lenteur du personnage, vous pouvez mettre le Pict Mode en Heap ( dans les réglages de C.Basic ), ca va augmenter la vitesse du personnage.
Le gros morçeau auquel j'ai peur de m'attaquer est d'implémenter le principe de couche "passive" qui regroupe les objets à l'écran qui ne bougent jamais, et de couche "active" qui regroupe ce qui peut bouger (dresseur, pnj...).
Dijkstra - The Witcher
Citer : Posté le 11/09/2019 20:48 | #
Merci à toi et bon courage !
Voilà quelques indices ! La partie statique peut se mettre facilement dans une map comme d'habitude, donc il te suffit de retirer ce qui peut bouger de ta map et hop tu as la partie passive.
Pour la partie active tu peux faire un tableau ou une liste avec tous les objets actifs sur la map. Pour chaque objet, tu retiens sa position à l'écran, son sprite, et genre son rôle/son numéro de dresseur/ce qui te permet de savoir quoi faire quand on interagit avec lui.
Dans ta boucle de jeu, de temps en temps tu parcoures la liste des objets actifs et tu les fais bouger s'ils marchent, te foncer dessus s'ils te cherchent des problèmes, etc etc.
enzocasio Invité
Citer : Posté le 10/12/2019 18:03 | #
Ma calculatrice me met qu'il ya une erreur de syntaxe quand je veux mettre le fichiers en .g1r ou g1m je sais plus.
j'aurai besoin d'aide svp
Citer : Posté le 10/12/2019 18:11 | #
Bonjour ! Utilises tu bien C. BASIC comme indiqué dans le topic, et pas le menu PRGM normal ?
Dijkstra - The Witcher
totorluth Invité
Citer : Posté le 30/12/2020 12:00 | #
je vais peut-être paraitre debile mais je ne sais ce qu'est le C.Basic.
Quelqu'un pourrait m'éclairais svp ?